/*
 * @作者: jack-ubuntu
 * @Date: 2024-02-21 15:11:19
 * @LastEditTime: 2024-02-21 15:25:08
 * @最后编辑的作者: jack-ubuntu
 * @文件描述: 
 * @FilePath: /linux/2401/day2/10_test.c
 */
#include "../header.h"


/**
 * @函数原型: 
 * @函数功能: 
 * @参数说明: 
 * @       参数1: 
 * @       参数2: 
 * @       参数3: 
 * @返回值: 
 * @param {int} argc
 */

//TODO 1 每秒钟输出一个时间到屏幕上
//TODO 2 每秒钟输出一个时间到文件中 tim.txt
int main(int argc, char const *argv[])
{
    time_t tm = 0;
    char * tmp = NULL;
    int fd = open("tim.txt",O_RDWR | O_TRUNC);
    FILE * fp = fopen("tim.txt","a+");
    while (1)
    {
        //每秒钟取出秒数
        time(&tm);
        // 标准函数 输出到 屏幕上
        // printf("当前时间是:%s",asctime(localtime(&tm)));
        tmp = asctime(localtime(&tm));
        //! 系统函数方法 输出到屏幕上
        write(STDOUT_FILENO,tmp,strlen(tmp));

        //? 系统函数 输出到文件中
        //write(fd,tmp,strlen(tmp));

        //? 标准函数 输出到文件中
        fprintf(fp,"%s",tmp);
        //清空缓冲区
        fflush(fp);
        //间隔1秒钟
        sleep(1);
        /* code */
    }
    //关闭
    fclose(fp);
    close(fd);
    return 0;
}
